1. Field of the Invention
This invention relates to case-based reasoning and to a case-based reasoning system which performs autonomous learning in a real-world environment.
2. Description of Related Art
While computers are capable of tremendous processing power, their ability to use that processing power for reasoning about complex problems has so far been limited. Generally, before a computer can be used to address a complex problem, such as one which requires the attention of a human expert, it has been necessary to distill the knowledge of that expert into a set of inferential rules (a "rule base") which allow an automated processor to reason in a limited field of application. While this method has been effective in some cases, it has the natural drawback that it often requires a substantial amount of time and effort, by both computer software engineers and experts in the particular field of application, to produce a useful product.
Moreover, rule-based systems of this type present a difficult programming task. Unlike more prosaic programming tasks, constructing a rule base is sometimes counterintuitive, and may be beyond the ability of many application programmers. And once a rule-based system has been constructed based on the knowledge of a human expert, it may be difficult to accommodate changes in the field of operation in which the processor must operate. Such changes might comprise advances in knowledge about the application field, additional tasks which are intended for the processor, or changes in or discoveries about the scope of the application field.
One proposed method of the prior art is to build automated reasoning systems which operate by reference to a set of exemplar cases (a "case base"), to which the facts of a particular situation (the "problem") may be matched. The processor may then perform the same action for the problem as in the exemplar case. While this proposal has been well-received, case-based systems of this type may still require a substantial amount of human effort to identify exemplar cases and present a processor with sufficient information that cases may be matched and acted upon. For example, it may be necessary to deduce or supply extensive information about a complex environment so as to determine a preferred set of exemplar cases.
A parent copending application, Ser. No. 07/664,561, filed Mar. 4, 1991, discloses inventions in which a case-based reasoning system is smoothly integrated into a rule-based reasoning system, and in which an automated reasoning system may dynamically adapt a case base to problems which it encounters. An aspect of the inventions disclosed in that application also includes a technique in which a system may be set to work with a limited case base, and may solicit human advice for treatment of new problems which are not already well-treated by the case base, thus learning how to do its job on a dynamic basis.
Another application, Ser. No. 07/869,935, now abandoned, filed the same day as this application, discloses inventions in which a machine learning system may operate in conjunction with a relational database system, and particularly in which a machine learning system may operate in conjunction with a relational database system with an SQL interface. This allows the machine learning system to use high-speed searching power of computer systems which have been designed for use with relational database systems with an SQL interface, and allows the machine learning system to be smoothly integrated into computer systems which have relational databases, even if those databases were not designed to work with learning or reasoning systems of any kind.
It would be advantageous if an automated reasoning system could dynamically create its own case base in response to problems which it encounters, thus learning how to do its job on a dynamic basis and without substantial human intervention, or at least with only occasional human intervention. Limited intervention would allow an automated reasoning system to examine a larger set of cases and to determine a preferred set of exemplar cases without an external agent, such as a human operator, having to deduce or supply extensive information about a complex environment.
It would also be advantageous if an automated reasoning system could operate autonomously in a complex environment, possibly with external intervention such as positive or negative reinforcing stimuli. External stimuli might be in response to a result of the system's attempts to manipulate its environment, or might be provided by an external agent, such as a human operator. Accordingly, it is an object of the invention to provide an automated reasoning system which does not require intervention for every case.